import socket

def main():
    client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    server_port = int(input("请输入服务器的port:"))
    client_socket.connect(('127.0.0.1',server_port))
    file_name = input("请输入要下载的文件名:")
    client_socket.send(file_name.encode("gbk"))

    file_data = client_socket.recv(1024)
    if file_data:
        with open("[新]"+file_name,"wb") as f:
            f.write(file_data)

    client_socket.close()

if __name__ == "__main__":
    main()

"""
with 可用于写入文件的open(,wb)方式，因为向文件中写入数据，open不会出现异常，但是读取文件数据就不能这样子写

with open(文件名,wb) as f:    等同于  f = open(文件名,wb)
    f.write(数据)                    try:                       
                                        f.wirte(数据)
                                        f.close()
                                    except:
                                        f.close()
"""